package com.hqt.pojo;

import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * InventoryType entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "INVENTORY_TYPE", schema = "HQT")
public class InventoryType implements java.io.Serializable {

	private static final long serialVersionUID = 8913326774671225694L;
	private String pkInventoryType;
	private String shopName;
	private String productNo;
	private String prdouctType;
	private String productColor;
	private String info;
	private String def1;
	private String def2;
	private String def3;
	private String def4;
	private String def5;
	private String def6;
	private String def7;
	private String def8;
	private String def9;
	private String def10;
	private String addTime;
	private Integer dr;
	private String ts;
	private Set<ProductProfit> productProfits = new HashSet<ProductProfit>(0);
	private Set<InventoryProduct> inventoryProducts = new HashSet<InventoryProduct>(
			0);

	// Constructors

	/** default constructor */
	public InventoryType() {
	}

	/** minimal constructor */
	public InventoryType(String pkInventoryType) {
		this.pkInventoryType = pkInventoryType;
	}

	/** full constructor */
	public InventoryType(String pkInventoryType, String shopName,
			String productNo, String prdouctType, String productColor,
			String info, String def1, String def2, String def3, String def4,
			String def5, String def6, String def7, String def8, String def9,
			String def10, String addTime, Integer dr, String ts,
			Set<ProductProfit> productProfits,
			Set<InventoryProduct> inventoryProducts) {
		this.pkInventoryType = pkInventoryType;
		this.shopName = shopName;
		this.productNo = productNo;
		this.prdouctType = prdouctType;
		this.productColor = productColor;
		this.info = info;
		this.def1 = def1;
		this.def2 = def2;
		this.def3 = def3;
		this.def4 = def4;
		this.def5 = def5;
		this.def6 = def6;
		this.def7 = def7;
		this.def8 = def8;
		this.def9 = def9;
		this.def10 = def10;
		this.addTime = addTime;
		this.dr = dr;
		this.ts = ts;
		this.productProfits = productProfits;
		this.inventoryProducts = inventoryProducts;
	}

	// Property accessors
	@Id
	@Column(name = "PK_INVENTORY_TYPE", unique = true, nullable = false, length = 20)
	public String getPkInventoryType() {
		return this.pkInventoryType;
	}

	public void setPkInventoryType(String pkInventoryType) {
		this.pkInventoryType = pkInventoryType;
	}

	@Column(name = "SHOP_NAME", length = 100)
	public String getShopName() {
		return this.shopName;
	}

	public void setShopName(String shopName) {
		this.shopName = shopName;
	}

	@Column(name = "PRODUCT_NO", length = 100)
	public String getProductNo() {
		return this.productNo;
	}

	public void setProductNo(String productNo) {
		this.productNo = productNo;
	}

	@Column(name = "PRDOUCT_TYPE", length = 100)
	public String getPrdouctType() {
		return this.prdouctType;
	}

	public void setPrdouctType(String prdouctType) {
		this.prdouctType = prdouctType;
	}

	@Column(name = "PRODUCT_COLOR", length = 100)
	public String getProductColor() {
		return this.productColor;
	}

	public void setProductColor(String productColor) {
		this.productColor = productColor;
	}

	@Column(name = "INFO", length = 1000)
	public String getInfo() {
		return this.info;
	}

	public void setInfo(String info) {
		this.info = info;
	}

	@Column(name = "DEF1", length = 200)
	public String getDef1() {
		return this.def1;
	}

	public void setDef1(String def1) {
		this.def1 = def1;
	}

	@Column(name = "DEF2", length = 200)
	public String getDef2() {
		return this.def2;
	}

	public void setDef2(String def2) {
		this.def2 = def2;
	}

	@Column(name = "DEF3", length = 200)
	public String getDef3() {
		return this.def3;
	}

	public void setDef3(String def3) {
		this.def3 = def3;
	}

	@Column(name = "DEF4", length = 200)
	public String getDef4() {
		return this.def4;
	}

	public void setDef4(String def4) {
		this.def4 = def4;
	}

	@Column(name = "DEF5", length = 200)
	public String getDef5() {
		return this.def5;
	}

	public void setDef5(String def5) {
		this.def5 = def5;
	}

	@Column(name = "DEF6", length = 200)
	public String getDef6() {
		return this.def6;
	}

	public void setDef6(String def6) {
		this.def6 = def6;
	}

	@Column(name = "DEF7", length = 200)
	public String getDef7() {
		return this.def7;
	}

	public void setDef7(String def7) {
		this.def7 = def7;
	}

	@Column(name = "DEF8", length = 200)
	public String getDef8() {
		return this.def8;
	}

	public void setDef8(String def8) {
		this.def8 = def8;
	}

	@Column(name = "DEF9", length = 200)
	public String getDef9() {
		return this.def9;
	}

	public void setDef9(String def9) {
		this.def9 = def9;
	}

	@Column(name = "DEF10", length = 200)
	public String getDef10() {
		return this.def10;
	}

	public void setDef10(String def10) {
		this.def10 = def10;
	}

	@Column(name = "ADD_TIME", length = 19)
	public String getAddTime() {
		return this.addTime;
	}

	public void setAddTime(String addTime) {
		this.addTime = addTime;
	}

	@Column(name = "DR", precision = 22, scale = 0)
	public Integer getDr() {
		return this.dr;
	}

	public void setDr(Integer dr) {
		this.dr = dr;
	}

	@Column(name = "TS", length = 19)
	public String getTs() {
		return this.ts;
	}

	public void setTs(String ts) {
		this.ts = ts;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "inventoryType")
	public Set<ProductProfit> getProductProfits() {
		return this.productProfits;
	}

	public void setProductProfits(Set<ProductProfit> productProfits) {
		this.productProfits = productProfits;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "inventoryType")
	public Set<InventoryProduct> getInventoryProducts() {
		return this.inventoryProducts;
	}

	public void setInventoryProducts(Set<InventoryProduct> inventoryProducts) {
		this.inventoryProducts = inventoryProducts;
	}

}